# file      : common/as/buildfile
# license   : GNU GPL v2; see accompanying LICENSE file

import libodb = libodb%lib{odb}

libs =

for db: $databases
  import libs += libodb-$db%lib{odb-$db}

import libs += lib{common}

exe{driver}: {hxx cxx}{* -*-odb -*-odb-*} {hxx ixx cxx}{test-odb} testscript

# Introduce the metadata library target to make sure the libodb library is
# resolved for the odb_compile ad hoc rule (see build/root.build for details).
#
libue{test-meta}: $libodb

<{hxx ixx cxx}{test-odb}>: hxx{test} libue{test-meta}

for db: $databases
{
  exe{driver}: {hxx ixx cxx}{test-odb-$db}: include = $multi
  <{hxx ixx cxx}{test-odb-$db}>: hxx{test} libue{test-meta}
}

exe{driver}: libue{test-meta} $libs

# Specify the ODB custom options to be used by the odb_compile ad hoc rule
# (see build/root.build for details).
#
odb_options = --table-prefix as_ \
              --generate-schema  \
              --generate-query   \
              --generate-session

cxx.poptions =+ "-I$out_base" "-I$src_base"

# @@ BUILD@ Temporarily suppress the following warning:
#
#    test-odb.cxx(6234): warning C4244: 'argument': conversion from 'id_type::value_type' to 'test5::version_type::value_type', possible loss of data
#
if ($cxx.class == 'msvc')
  cxx.coptions += /wd4244

# Testscript's run-time prerequisites.
#
exe{driver}: ../../alias{database-client}: include = adhoc
